package com.dinfo.common;
//
//import java.util.HashMap;
//import java.util.Map;
//
//import net.rubyeye.xmemcached.CASOperation;
//
public class XSessionService {
//
	private static XSessionService instance = null;
//	
//	private XmemMng mc =null;
//
	public static synchronized XSessionService getInstance() {
		if (instance == null) {
			instance = new XSessionService();
		}
		return instance;
	}
//	
//	private XSessionService()  {
//		mc=XmemMng.getInstance();
//	}
//	
//	@SuppressWarnings("unchecked")
//	public Map getSession(String id) {
//		long s1= System.currentTimeMillis();
//
//		Map session=null;
//		
//		session = (Map) mc.get(id);
//		if (session == null) {
//			session = new HashMap();
//			boolean r=mc.set(id,0, session);
//			System.out.println(r);
//		}
//		System.out.print("getSession");
//		System.out.println(System.currentTimeMillis() -s1);			
//			
//		return session;
//	}
//	@SuppressWarnings("unchecked")
//	public void saveSession(String id,String key, Object arg1) {
//		long s1= System.currentTimeMillis();
//		final String k=key;
//		final Object o=arg1;
//
//		try {			
//			mc.cas(id,0,new CASOperation<Map>(){
//				//尝试更新5次
//				public int getMaxTries() {
//					return 5;
//				}				
//				public Map getNewValue(long currentCAS, Map map) {
//					map.put(k, o);
//					return map;
//				}});
//			System.out.print("saveSession");		
//		}	
//		finally{
//			System.out.println(System.currentTimeMillis() -s1);
//		}
//	}
	@SuppressWarnings("unchecked")
	public void removeAttribute(String id,String key) {
//		long s1= System.currentTimeMillis();
//		final String k=key;
//
//		try {
//			mc.cas(id,0,new CASOperation<Map>(){
//				//尝试更新5次
//				public int getMaxTries() {
//					return 5;
//				}				
//				public Map getNewValue(long currentCAS, Map map) {
//					map.remove(k);
//					return map;
//				}});
//			System.out.print("removeAttribute");
//		}	
//		finally{
//			System.out.println(System.currentTimeMillis() -s1);
//		}
	}
//	
//	public void removeSession(String id) {
//		long s1= System.currentTimeMillis();
//		try {
//			mc.delete(id);
//			System.out.print("removeSession");
//		}
//		finally{
//			System.out.println(System.currentTimeMillis() -s1);
//		}		
//	}
//
//	@SuppressWarnings("unchecked")
//	public static void main(String[] args) {
//		XSessionService s= XSessionService.getInstance();
//		
//			
//			Map map=s.getSession("1122334455");
//			
//			s.saveSession("1122334455", "haha", "2222");
//		
//		
//		
//	}
}
